I was afraid of writing this article but I think it could help someone or maybe even push to strive for more. I am a developer who works mostly with WordPress and I was able to earn 6 figures (gross) in 2020.
I understand that such salary could be achieved by getting a job in some tech companies without a problem in USA or some other countries. And yes, as developers, we can work remotely for almost any company in the world.
But I wanted to write this article to show a path of a self-taught developer who tried a lot of stuff and is still trying to find the perfect balance between work and life.
Also, this is just my path and it is not the best and it might actually be one of the worst 😀 But we learn as we live. Let’s rewind to 2008 and start from there.
This is a really long article, so if you want a summary, here it is:
- 2008-2010 – from Photoshop to web development, learning HTML & CSS, then PHP and MySQL + a little JavaScript – $0
- 2011-2012 – working on small projects as a student, sometimes not getting paid – $840
- 2013 – getting my first job as a Front End Developer, working with ASP.NET and C# – $8,000
- 2014 – getting a raise, starting side projects – $9,000
- 2015 – additional income and raise – $16,5000
- 2016 – new job + freelancing platforms – $13,800
- 2017 – getting a raise, started freelancing, plugin business – $33,500
- 2018 – freelancing increased + more sales from plugin business – $43,000
- 2019 – owning an LLC – $76,000
- 2020 – retainer and freelancing – 6-figures income
2008-2010 – Photoshop, Web
So to be honest, I’ve tried a lot of things even before so basically around 2008-2010 I watched tutorials and tried building lots of stuff. While I was at high school, I was always interested in how websites are done.
But before dwelling into that, I started playing around with photo manipulation using Photoshop. Among other features, I stumbled upon “Slice for Web…” and when I saw I had a website there, I was excited.
Although having my first html site was nice, I was not happy with being everything an image. It did not make sense to me because every update would have to be sliced again. So I went on and search how to build websites. First I learned how to do some CSS to create layouts, navigation and such.
Once I was happy that I could actually build a site from a PSD with CSS and HTML, I wanted to learn even more. What about blogs? Updating a html file just to include each recent post and uploading them through a FTP also does not make sense to me. That is too much work, right?
So I found out that blogs can be built using PHP and MySQL. Back in those days I had no money, that is, I did not even have a credit card or a bank account so I could not buy a course online even if I wanted to. But in those days there was a lot of sharing between so I was able to stumble upon a few PHP and MySQL courses. One was a simple one, showing basics, getting data from a database and building a blog as a final lesson. The other one was focused on OOP and building a solution where you could upload photos and comment on them.
After I learned all of that I played around with PHP and I was helping growing a community around web and graphics. The community was around people from countries that were in ex Yugoslavia (our languages are similar). It was a fun learning experience.
Somewhere around those years I also learned about WordPress and started learning more how it works. Another thing, I learned basic JavaScript then as well and how to work with jQuery (example, building an accordion and such). Everything was really confusing then as mostly it was reading the tutorials and copying the code.
2011-2012 – First projects
~$840 earned
In 2011-2012 I started actually working a bit more with PHP and MySQL. When I was confident enough I actually contacted a Facebook page which was selling watches for low prices. My guess is that those watches were bought in bulk through eBay and such and then sold through their Facebook page.
I contacted them and we agreed that if I build them a simple site where they can list their watches I would get several watches. They were sold at around $15-20 if I recall correctly and I think we agreed on about 10 of them. $150-200 for a full site; design, front end and back end from ground zero.
I created various tables for users, watches and even storing images of watches. No framework, no extra knowledge on security so I guess, the site might have been hacked pretty easily 😀 Not sure what happened after all of that but I guess we both have lost contact so this was never fully realized (no watches for me).
For next few months I have gotten much better at WordPress as well. I learned through Tuts+ how to build custom themes and even got some of their eBooks that helped me a lot there.
So somewhere in beginning of 2012, I contacted a company that was looking for a website through a job-searching magazine. Those were the days when my girlfriend and I were searching for jobs by buying those magazines and circling all interesting ones 😀
Without defining much scope I was so happy that they were interested in working with me. Then, as a student, you could work legally through a student agency. So I got the papers and we started working. I proudly set the price to $200 since at first, it seemed like a simple PSD to WP site. Not that simple though.
I had to build 4 sites from that one PSD with various sections. Good thing the post types already existed then so I could easily build their services and portfolio features. But that was not the end. I had to build a main page with some animation so all 4 of those would show up on click. So I download a trial Flash and build it all together in that.
Good thing, I was actually paid for it and I got my first $200 from it 😀 After that experience I actually was hired for a company in another city to work for them occasionally as a student. I was in charge of designing and building a WordPress site for a construction company. While working for them I also started my training to work in T-Com as an agent.
I was paid about $140 for that and then I worked on their CMS for tourist board sites I accumulated to about $200 in hours. Those $200 I have never seen as they stopped communicating 🙂
Between all that work, I had most success with a Dropbox plugin for WordPress which I put on CodeCanyon. That one generated about $400-500 which was pretty big for me. I remember that my girlfriend and I, without any money, were thinking what to do or where to go. We had a car but we could not afford to buy gas to go for a short trip (such as 1-2 hours drive from us). And I got some of the money CodeCanyon sent me for it. We were so happy for that then 😀
And the funny thing is that I just copied a Dropbox code shared openly that was a PHP upload form that would send the uploaded files to your Dropbox. I wrap that in a plugin, changed the code a bit so you can define your Dropbox account and folder where to upload but that was that. I did not understand a thing on how this actually worked. Working with 3rd party APIs and such was magic for me then. But it earned some money even then, just by taking action and thinking how this could help others.
That plugin was kind of a “scratch my itch” thingy. In 2012 I was going to college and my group of friends and I used Dropbox to share documents, homework and such. We even had a “chat” by writing in a .txt file in there and prepending our name to it (hoping that another one won’t try to update that file as well). So I built a WP site on free hosting account, activated that plugin and we then could easily upload files from college computers to our shared Dropbox folder.
Every time I had some spare time, I was mostly using it to learn something new. I was still searching for a job through that magazine and through online platforms.
2013 – My First Job
~$8000/year salary
2013 was my last year going to college so in the last semester I had all the time in the world. I was happy with what I knew by then and I focused on applying mostly to jobs around web development.
I sent so many application (from 2012-2013) to companies in my city and cities around. No replies. Until somewhere in February/March, I got a phone call that they would want to interview me. Funny thing, I did not even know who called me since I sent so many applications, so I even asked which company is calling me 😀
The interview went well and I presented my projects that I’ve done (even though, a lot of them were not 100% completed). I passed that phase and then I had a week to prepare a site (HTML, CSS and JavaScript) from a PSD.
I remember that I had a busy week so I reserved the last day for it. It took me around 14 hours to build it and I think I sent them my project in some early morning hours.
Because I was still a student and they did not have to pay any taxes for me, they decided to hire me alongside another developer. That developer is Dino Kraljević who became a good friend of mine. I started working on 15th of April for them and my monthly salary was around $600-700.
As a junior developer, that was a perfect company for me because you could find time to do your own things and learn new technologies. I worked there as a Front end developer even though I had to write a lot of backend code as well. Our sites were running on ASP.Net so I learned a lot of C#.
After 6 months on working there and learning how their deployment works on their MS Servers, I was given a pretty complex site to build. The site was a complete project for the tourist board of Rijeka so you can have every possible information when visiting it. It was also built
Since Dino and I were newbies there, after almost a year working there, we decided to start a site on web development in Croatian. Even though I still regret making that site in Croatian, it was a good experience.
I did videos by recording my voice through a web cam microphone 😀 The audio was awful! But that was a start.
2014 – Same Job
~$9000/year salary
2014 was a year where I have grown the site where I have written web development tutorials, mostly focused on WordPress.
I built a custom theme and also plugins so the site, at first, had even a stackoverflow-like features where you could post questions, get answers and vote on them as well.
I also learned about the BadgeOS and their integration with WordPress, so I build everything around that as well so people could earn points there.
I got a raise, if I remember correctly somewhere in 2014 so the above salary is probably a bit lower. The problem with the above site was that it had only around 800 visits per month. Even though we have a lot of developers in Croatia and all other countries with similar language, it was hard to get to them.
But 2014 was a year where I had steady income and I was able to grow as a developer there working with various technologies. In my spare time, it was PHP and MySQL. And when working at the job, I was developing with C#, ASP.Net 3 and 4.5, linq, XSLT, JavaScript (jQuery) and such.
The downside of 2014 (and the following 2015) was that the company was in trouble of getting paid by our clients. They did a great job handling all that so everyone could get paid, but the problem was that we sometimes got only 60% of our monthly payroll. The other 40% we would get by the end of the month once they are able to accumulate it all. No one to blame here, but the financial situation was really stressful. And I decided that I don’t want to live like that.
2015 – Year of Additional Income
~$10,000/year salary
~$6,500 in side jobs
I have written about this year and the additional income in another article: How I made $6,510 with WordPress as a Developer. Here is a shorter version.
There was a salary increase as well here but as I was still really ambitious with growing the learning site, I would get up early and work on tutorials there. Basically, sometimes I slept for 3 hours each other day so I could work on those stuff more.
This is something I don’t recommend and you should structure your time much better. But I was really excited by everything and I could not wait to get up to work on it.
I created an eBook (in Croatian) on developing WordPress themes with Bootstrap 3.x. This eBook, through Leanpub, earned me about $250.
As my site grew slowly, people would find out about it. So I was contacted by a company if I could build a custom booking solution for their client. It was a WordPress site so I said I could.
I combined a Booking plugin and customized it for their needs. They paid me around $700 for it. The customization involved rewriting some PHP functions and adding custom jQuery code to make it work how they wanted it.
Much bigger change was getting contacted by Alex from https://www.nessgraphica.com/. He wanted to build a solution to sell the book covers he made but were never used. Since he is a designer, he always builds a few covers to choose for his clients, so why not earn a bit from the spare ones 🙂
I built it using WordPress and BuddyPress with a custom eCommerce solution using PayPal and Braintree for payments. I earned about $1,700 from that. We also built together a site for a client of his.
The site had to include a solution to simulate reading of chapters (that’s a hard thing!) and we managed it somehow. I earned $500 from it.
The biggest freelance project I worked on here was a site for a Football (Soccer) team. That was also thanks to Alex. We worked on it for a few months and I got paid $3,000 for it.
I also joined sites such as eLance (now Upwork) to try and get some job. That job/project hunting was without any success and I think I only got one job there. It was a $30 job where I just fixed a small issue through CSS. Because I was fast and efficient, the client decided to award me and paid $60.
The last side income was from writing two tutorials on Tuts+. I had enough courage after all projects and such to contact them with my article ideas. And I got accepted to write there. Huh! 🙂
Few weeks before 2016, I was contacted by Stjepan Štajduhar if I was interested in a new job. At that time I had a salary around $1,000/month (including stimulation). And I had a lot of free time at work because I would do my tasks fast. So I did not want to go there for the same payroll and I told him that I would go for $1,500/month (net) which is a pretty good salary in Croatia. It won’t get you a house, but you won’t starve and your bills will be paid (and you can save a few hundred bucks) 😀
2016 – Year of Change
~$13,000/year salary
~$800 in side income
A short overview of 2016 can be found here: My Career as a WordPress Developer in 2016.
So I accepted the job offer and I started working on StayNTouch, a PMS solution. This was my first time I got my hands on a MacBook Pro and after a few weeks on getting used it, I loved it.
So basically, I continued working on my site (the one you are reading this one) and working on new eBooks and more educational content.
My monthly income was more steady and I had more time to work on other things because I only worked for 30 hours per week.
This helped me learn much more and get better at JavaScript.
I have also applied to Codeable and Toptal platforms. And by the end of 2016 I was accepted by Codeable and got a project there after less than 24 hours of joining. The project was around $300 and then the other one was somewhere around $500.
2017 – More Freelancing & Plugins
~$13,000/year salary
~$19,000 in side income
~$1,500 additional payroll
You can read my review of 2017 in full here: https://www.ibenic.com/2017-year-review-wordpress-developer/
This was also the first time that my hustling was getting me somewhere around my yearly salary or even above it.
Codeable and Toptal got me around $14,000 with 20 projects. I remember targeting projects in the range of $300-1,000 on Codeable because such projects could be done pretty fast and they usually took from a 2-3 days to max 2 weeks.
I also started working with another agency: Grow Development. I applied to them in May of 2017 and I got accepted pretty fast. I started worked very seriously with WooCommerce and extensions related to it.
Simple Giveaways, which was started in 2016, started getting sales at the end of 2017 which has earned almost $2,000.
2018 – Financial Security
~$13,000/year salary
~$30,000 in side income
In 2018, while doing my daily job at 30 hours per week, I was also focused on increasing my income from freelancing and plugins. In 2018, most of the side income was coming from working with Grow Development (focused on WooCommerce).
My Simple Giveaways plugin earned around $4,000 and there were other projects from Codeable that have earned some income as well. I also started a new plugin Live Scores for Sportspress which did earn about $700 in 2018.
So, why I see 2018 as a year of financial security? I define the financial security not in the income amount but in possible opportunities. As I was freelancing, I also learned a lot (be it JavaScript, be it PHP) so I am confident enough that even if everything failed for me, I would be able to find another job somewhere. And with platforms such as Codeable, if you have a good strategy and portfolio, you should be able to get from $2-4,000 to even $10,000 worth of projects by month.
2019 – Owning an LLC
~$13,000/year salary
~$45,000 side income
~$18,000 profit
Since I was still working for StayNTouch, I was working for a salary at an LLC in Croatia (the only way to work for remote companies in other countries). So, all the income is looked as a gross income.
I did not own the LLC at the start of 2019, but my boss (the owner) decided to move to another country. Managing an LLC in Croatia while living in another country could be cumbersome because you would have to be here in Croatia from time to time due to some legalities. He decided to transfer the LLC to me.
This was a big change for me. I had to learn a lot on managing the LLC so it was a stressful summer for me because I had to go through several government institutions to make sure everything was transferred to me.
So with gross income, I now had to pay taxes and everything by myself. But the upside of it all, with the salary, if anything remained after taxes, I could also get the profits. So this year, alongside my side income, I was able to get the profit and thus move even closely to a 6 figure income.
This year, while focusing on managing LLC, working for StayNTouch, I was also even more focused on getting my other freelancing work. I worked even more for Grow Development and I was able to get on another project.
That project started as an idea of selling wines while also providing an e-learning platform to learn about wines and the producers. It is called Vivant. I was first hired there to create a way for selling products and bookings with WooCommerce. This was because a colleague of mine knew my skills and wanted to work with me. So we worked together on a headless WooCommerce app.
This has shown as a big no-no at the end and I was then hired to create a complete eCommerce solution integrated with Salesforce on a WordPress site. We were a team and we worked on that pretty fast. After that, they decided to move everything to a Laravel site and asked me if I would be able to work with Laravel. I spent 1 weekend going through the Laracasts free Laravel from Scratch course and I was ready to work on it.
My plugin business generated around $9,000 in 2019, while the other $36,000 were earned from freelancing with Grow Development and Vivant.
2020 – The 6-figures year
~$13,000/year salary
~$48,000 side income
~$50,000 profit
2020 was not a good year for the whole world. Not even for me, but financially, it was pretty good. Since I owned the LLC, I could put myself to a much lower salary and get more profit at the end of the year but I did not want to. Such salary can give me better credit rating so I could get a good mortgage for the flat I am trying to buy.
Since the lockdown, I was focused on making my plugins better. In this year, my plugin business generated about $8,000. So, it was a bit lower than 2019 but still good.
There were two big changes in 2020:
- I got a retainer agreement for a project which led me to have a fixed monthly income,
- StayNTouch had to move from the Shiji group
The second one was a bad one. StayNTouch had to move from Shiji group so we were all on the fence on what will happen with us. So in june, I was put on a big cut so instead of working 30 billable hours per week, I was put to 8 billable hours per week.
But, as with 2018, I was financially secure. Why? Because I had 2 other income streams that I worked for (Grow Development and Vivant). Plus the retainer agreement, I was not too stressed. I feel really lucky for that and grateful.
Daniel from Grow Development jumped in and offered me more billable hours so only after a week or so, I was back into working almost the same billable hours. I have also took this cut in hours as a way to rest a bit.
I will write more on 2020 in the year review article.
Conclusion – Always try to be better
I hope your path to a 6 figure business will be much faster and without too much hustling. If you’re working as a web developer or designer, I encourage you to check some of the job posting. If you’re focused on PHP, WordPress, check Post Status Job listing (this jumped my income).
I worked with a lot of people, a lot of them were better than me, some of them were at a similar level and a few of them were not too ambitious.
If you know everything on your current job, if there are no new challenging things to do, make something that will challenge you. Learn a new skill, try getting a new project, even if it was a side project for yourself.
Never stop learning! Because if you are working as a developer, designer or similar, new techniques and technologies are evolving every day. You should at least learn what they mean or what they do. So when an opportunity arises, you know where to look and what to learn.
I see that as a good way to make yourself viable for various projects and also to make sure you will be able to find a new job quickly (if ever needed).
Become a Sponsor
This is a great post. As a US developer, it’s crazy that your salary rate. Thanks for sharing and glad your side income is making you a lot financially! Keep it up!
Thank you! It was a crazy ride and it still is 😀 Hopefully, in a few years I’ll be able to earn similar range but work less 😀
Hello
Thank you for this nice article, it is really encouraging for beginners. I am sure that your perseverance will pay off in the end. In any case, that’s all the bad news I wish you! One question, is your WordPress development training on your site the same as on Udemy?
Have a nice day and take care of yourself!
Hi! Yes everything is the same on those courses.